package com.shanzhu.hospital.common;


import lombok.Data;
@Data
public class R<T> {//一个通用的API响应封装类，用于标准化API的响应格式

    /**
     * 状态码
     */
    private int status;

    /**
     * 状态消息
     */
    private String msg;

    /**
     * 数据
     */
    private T data;

    public R(int status, String msg, T data) {
        this.status = status;
        this.msg = msg;
        this.data = data;
    }
    //基础成功响应
    public static R ok(Object data) {
        return new R(200, "成功", data);
    }
    //自定义消息的成功响应
    public static R ok(String msg, Object data) {
        return new R(200, msg, data);
    }
    //仅消息的成功响应
    public static R ok(String msg) {
        return new R(200, msg, Boolean.TRUE);
    }
    //错误响应快捷方法
    public static R error(String msg) {
        return new R(400, msg, Boolean.FALSE);
    }
}
